home *** CD-ROM | disk | FTP | other *** search
- package java.io;
-
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.LinkedHashSet;
-
- class DeleteOnExitHook {
- private static DeleteOnExitHook instance = null;
- private static LinkedHashSet<String> files = new LinkedHashSet();
-
- static DeleteOnExitHook hook() {
- if (instance == null) {
- instance = new DeleteOnExitHook();
- }
-
- return instance;
- }
-
- private DeleteOnExitHook() {
- }
-
- static void add(String var0) {
- synchronized(files) {
- if (files == null) {
- throw new IllegalStateException("Shutdown in progress");
- } else {
- files.add(var0);
- }
- }
- }
-
- void run() {
- LinkedHashSet var1;
- synchronized(files) {
- var1 = files;
- files = null;
- }
-
- ArrayList var2 = new ArrayList(var1);
- Collections.reverse(var2);
-
- for(String var4 : var2) {
- (new File(var4)).delete();
- }
-
- }
- }
-